#ifndef QAVAUDIOOUTPUT_H
#define QAVAUDIOOUTPUT_H

#include <qavaudioframe.h>
#include <memory>

QT_BEGIN_NAMESPACE

class QAVAudioOutputPrivate;
class QAVAudioOutput : public QObject
{
public:
    QAVAudioOutput(QObject* parent = nullptr);
    ~QAVAudioOutput();

    void setVolume(qreal v);
    bool play(const QAVAudioFrame &frame);

protected:
    std::unique_ptr<QAVAudioOutputPrivate> d_ptr;

private:
    Q_DISABLE_COPY(QAVAudioOutput)
    Q_DECLARE_PRIVATE(QAVAudioOutput)
};

QT_END_NAMESPACE

#endif
